/* Rexx program to convert makedoc guides to html * * No error checking! * * Relies on very specific format! * * $VER: AGDoc2HTML.rexx 1.0 (16.3.97) */ parse arg arg1 seealso = 0 call open('in',arg1,'r') line = readln('in') do while ~eof('in') word1 = word(line,1) if word1 = "@database" then do end else if word1 = "@rem" then do end else if word1 = "@node" then do name = word(line,2) if name ~= "main" then do name = substr(name,2,length(name)-2) title = arg1"/"name end else do title = arg1 end call WriteHeaders(name" "title) seealso = 0 end else if substr(line,1,2) = "@{" then do call writech('out',''link'') end else if word1 = "@endnode" then do call WriteTrailers end else do if seealso then do newline = "" inlink = 0 link = "" do i=1 to length(line) by 1 c = substr(line,i,1) if inlink then do if (c = " ") | (c = ",") | (c = ".") then do if (index(link,"()") ~= 0) & (index(link,"/") = 0) then do newline = newline||''link'' newline = newline||c end else do newline = newline||link||c end inlink = 0 link = "" end else do link = link||c end end else do if (c = " ") | (c = ",") | (c = ".") then do newline = newline||c end else do link = c inlink = 1 end end end if inlink then do if (index(link,"()") ~= 0) & (index(link,"/") = 0) then do newline = newline||''link'' end else do newline = newline||link||c end end call writeln('out',newline) end else do call writeln('out',line) if index(line,"SEE ALSO") ~= 0 then do seealso = 1 end end end line = readln('in') end call close('in') return WriteHeaders: procedure parse arg name title say name call open('out',name".html",'w') call writeln('out',"") call writeln('out',"") call writeln('out',""title"") call writeln('out',"") call writeln('out',"") call writeln('out',"

"title"

") call writeln('out',"

")
	return

WriteTrailers: procedure
	call writeln('out',"
") call writeln('out',"") call writeln('out',"") call close('out') return